package com.gagakuai.engine.delegate.event;

/*
 * @program: common-starters
 * @description: 事件分发器
 * @author: houhong
 * @create: 2023-01-02 21:08
 */
public interface ActivitiEventDispatcher {

    void addEventListener(ActivitiEventListener listenerToAdd);

    void addEventListener(ActivitiEventListener listenerToAdd, ActivitiEventType... types);

    void removeEventListener(ActivitiEventListener listenerToRemove);

    void dispatchEvent(AbstractActivitiEvent event);

    void setEnabled(boolean enabled);

    boolean isEnabled();
}